# Update driver

Updates an existing driver. Uses the same request body as create. Only provided fields are updated.

Endpoint: PUT /v1/drivers/{id}
Version: 1.0.0
Security: BearerAuth, ApiKeyAuth

## Path parameters:

  - `id` (integer, required)
    Driver identifier.

## Request fields (application/json):

  - `clientId` (integer, required)
    Client identifier.
    Example: 1

  - `firstName` (string, required)
    Driver first name.
    Example: John

  - `middleName` (string | null)
    Driver middle name.

  - `lastName` (string, required)
    Driver last name.
    Example: Doe

  - `email` (string | null)
    Driver email address.

  - `phone` (string | null)
    Driver phone number.

  - `dateOfBirth` (string | null)
    Date of birth (MM-dd-yyyy).

  - `dateOfHire` (string | null)
    Date of hire (MM-dd-yyyy).

  - `driverType` (string, required)
    Driver type name (resolved via lookup).

  - `address1` (string | null)
    Address line 1.

  - `address2` (string | null)
    Address line 2.

  - `state` (string | null)
    State name or code.

  - `city` (string | null)
    City name (requires state).

  - `zip` (string | null)
    ZIP code.

  - `driverLicenceNo` (string | null)
    Driver license number.

  - `driverLicenseState` (string | null)
    License state name or code.

  - `dlType` (string | null)
    DL type name.

  - `cdlOriginalDate` (string | null)
    CDL original date (MM-dd-yyyy).

